1. Field of the Invention
The field of art to which this invention relates is a method to compensate for a fade in a digital video input sequence using a video compression sub-system. Specifically, this invention relates to detecting a fade in the digital video sequence and adjusting the encoding algorithm used by the video compression sub-system when the fade is detected.
2. Description of the Related Art
Within the past decade, the advent of world-wide electronic communications systems has enhanced the way in which people can send and receive information. In particular, the capabilities of real-time video and audio systems have greatly improved in recent years. In order to provide services such as video-on-demand, video conferencing, and multimedia communications to subscribers, an enormous amount of network bandwidth is required. In fact, network bandwidth is often the main inhibitor in the effectiveness of such systems.
In order to overcome the constraints imposed by networks, compression systems have emerged. These systems reduce the amount of video and/or audio data which must be transmitted by removing redundancy in the picture sequence. At the receiving end, the picture sequence is uncompressed and may be displayed in real-time.
One example of an emerging video compression standard is the Moving Picture Experts Group ("MPEG") standard. Within the MPEG standard, video compression is defined both within a given picture and between pictures. Video compression within a picture is accomplished by conversion of the digital image from the time domain to the frequency domain by a discrete cosine transform (DCT), quantization, and variable length coding, all of which are well known in the art. Video compression between pictures is accomplished via a process referred to as motion estimation and compensation, in which a motion vector is used to describe the translation of a set of picture elements (pels) from one picture to another picture. Motion compensation takes advantage of the fact that video sequences are most often highly correlated in time, each frame in any given sequence may be similar to the preceding and following frames. These motion estimation and compensation techniques are also well known in the art.
To carry out the video compression, an encoder scans subsections within each frame, called macroblocks, and identifies which ones have not changed position from one frame to the next. The encoder also identifies reference macro blocks while noting their position and direction of motion, and assigns a motion vector which identifies the motion of the reference block from one frame to another. Only the motion vector and difference data between each reference macro block and the affected current macro block is transmitted to the decoder. The decoder stores the information that does not change from frame to frame in its buffer memory and uses it to periodically fill in the macro blocks of the frame that do not change. The video sequence is subsequently decompressed and displayed close enough to the original video sequence to be acceptable for most viewing.
The MPEG-1 standard was introduced to handle the compressed digital representation of non-video sources of multimedia, and subsequently adapted for the transmission of video signals as long as the video material was first converted from interlaced to progressively scanned format. The MPEG-2 standard was developed to produce higher quality images at higher bit rates for moving images of various applications such as digital storage and communication, and supports both video material in interlaced or progressively scanned formats.
When compressing (or encoding) a video sequence according to a video compression standard, such as the MPEG2 standard for video compression, the possibility exists that a fade may occur in the input video sequence (e.g., video-to-black or black-to-video). Failure of the encoding subsystem to detect and react appropriately to such a fade can result in degraded quality in the compressed video stream. This is due to the encoder choosing poor reference macroblocks or improperly choosing non-intra encoding when an intra decision should have been made. When decompressed and subsequently displayed, video encoded without detection of the fade and appropriate adjustment in the encoding algorithm can have noticeable artifacts in the transmitted video sequence. This results in overall poor picture quality during and immediately following the original fade portion of the video sequence. A need therefore exists for a mechanism to not only detect such fade sequences, but to adjust the manner of encoding to maximize the quality of the encoded result.